Release 10.1A: OpenEdge Getting Started:
Installation and Configuration


Logical structure and syntax of property files

All property files use a hierarchical structure consisting of named groups and subgroups. Each group or subgroup can define a set of properties, for which the values can be either specified or null.

A subgroup inherits all properties from its parent group. By default, it also inherits the values of those properties. Within a subgroup, inherited defaults can be overridden and additional properties can be defined. The lowest level subgroup defines a specific instance of the component type.

Note: Properties are valid only if they are allowed by the appropriate schema file. An attempt to create an unsupported property results in an error.

The syntax in a property file is as follows:

For example, consider the following groups defined in the as-installed version of ubroker.properties:

[UBroker] 
     controllingNameServer= 
     srvrLogEntryTypes= 
[UBroker.AS] 
     srvrLogEntryTypes=ASPlumbing,DB.Connects 
     description=AppServer Broker 
[UBroker.AS.asbroker1] 
     controllingNameServer=NS1 
     description=A sample AppServer setup for State-reset 

The top-level [UBroker] group defines a set of properties that are inherited by the subgroup [UBroker.AS] and by all other subgroups.

The subgroup [UBroker.AS] defines properties for all AppServer instances. It assigns a default value to the inherited srvrLogEntryTypes property, and it defines an additional description property.

The subgroup [UBroker.AS.asbroker1] defines an AppServer instance. It assigns a value to the controllingNameServer property inherited from [UBroker], and it overrides the value of the description property inherited from [UBroker.AS].

Property value formats

This section provides a summary of the supported formats for expressing property values. These formats are presented in three categories:

Table 10–4 lists the formats that were introduced in OpenEdge 10 for use in all property files.

Table 10–4: New value formats supported in all property files
Description
Syntax and example
Reference to another property value.
!{value-of:group.property}
Example:
jvmargs=!{value-of:Common.jvmargs}
Reference to a Java system property.
!{SystemProperty:java_property}
Example:
userName=!{SystemProperty:userName} 
List of references to be evaluated sequentially. The first reference to be resolved is used. The last entry can be an explicit value. The delimiter between references is a question mark (?), and the list must also be terminated with a question mark.
?value1?value2?value3...value-n?
Example:
description=?!{SystemProperty:
userName}?!{value-of:NameServer.NS1.
hostName}?NS1 Host? 
Hexadecimal value.
hex_value
Example:
srvrLoggingLevel=0x0BF

Table 10–5 lists the formats that were introduced in OpenEdge 10 for use exclusively in delta files used as input to the mergeprop utility.

Table 10–5: New value formats supported in mergeprop delta files only
Description
Syntax and example
Value formed by appending a specified string to the existing value.
!{current-value}append_string
Example:
descritpion=!{current-value} UPDATED
Reference to a Java system property.
!{newValue:UUID}
Example:
uuid=!{newValue:UUID}

Table 10–6 lists the remaining supported formats, which were introduced prior to the release of OpenEdge 10.

Table 10–6: Value formats supported prior to OpenEdge 10
Description
Syntax and example
An explicit integer or string constant.
value
Example:
portNumber=3095
Reference to a system environment variable.
${env_variable}
Example:
workDir=${WORKDIR}
Reference to a Windows registry value.
@{registry_value}
Example:
workDir=@{WorkPath}


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095